
#ifndef _ascendancy_dock_commands_
#define _ascendancy_dock_commands_

#include <QDockWidget>
#include <QTabWidget>
#include <QPushButton>
#include <QGridLayout>
#include <QHBoxLayout>
#include <QCheckBox>

class		DockCommandsTabsGalaxy : public QWidget
{
  
  Q_OBJECT

public:
  
  DockCommandsTabsGalaxy();
  ~DockCommandsTabsGalaxy();

  void		setParent(QWidget *parent);
  void		setSignals();

protected:

  QWidget	*parent;

private:

  QPushButton	*zoomIn;
  QPushButton	*zoomOut;
  QPushButton	*left;
  QPushButton	*right;
  QPushButton	*up;
  QPushButton	*down;
  QPushButton	*reset;
  
  QCheckBox	*showLinks;
  QCheckBox	*showSpaceShips;
  QCheckBox	*showSystemInfo;

  QGridLayout	rotateLayout;
  QHBoxLayout	zoomLayout;
  QVBoxLayout	mainLayout;
  
};

class		DockCommandsTabs : public QTabWidget
{
  Q_OBJECT

public:
  
  DockCommandsTabs();
  ~DockCommandsTabs();

  void		setParent(QWidget *parent);

signals:
  
  // galaxy tab signals
  void		galaxyZoomIn();
  void		galaxyZoomOut();
  void		galaxyRotateLeft();
  void		galaxyRotateRight();
  void		galaxyRotateUp();
  void		galaxyRotateDown();
  void		galaxyResetView();

  void		showLinks(int);
  void		showSpaceShips(int);
  void		showSystemInfo(int);

protected:

  QWidget	*parent;

private:

  DockCommandsTabsGalaxy galaxy;

};

class		DockCommands : public QDockWidget
{
  
  Q_OBJECT

public:

  DockCommands();
  ~DockCommands();

  void		setParent(QWidget *parent);

  DockCommandsTabs tabs;

protected:

  QWidget	*parent;
  

};

#endif
